Пятница, 22.11.2024, 17:31
| RSS
Поиск
Главная |
Защита, контроль, управление
Форма входа

Меню

Авторские проекты

Статьи

Raspberry Pi

Полезная информация

Обратная связь

Ссылки

Форум

Чат

Канал YouTube

Группа в Facebook


Календарь
«  Май 2018  »
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
28293031

Наш опрос

Ссылки


Яндекс.Метрика





.
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Web Home Pi. Update 05_2018

Web Home Pi. Update 05_2018

Наш канал в YouTube


Последнее обновление системы домашней автоматизации WebHomePi получилось довольно объемным, поэтому рассмотрим его в рамках отдельного обзора. При разработке обновленной версии основной упор делался на то, что бы максимально облегчить пользователю конфигурирование системы под свои требования через web-интерфейс и без необходимости правок программного кода в исполняемых скриптах.

Отмечу, что обновление затронуло значительную часть программных модулей, конфигурационных файлов, установку дополнительных библиотек и т.д., поэтому создан новый образ SD-карты программного обеспечения WebHomePi, который позволит вам выполнить обновление системы, просто скопировав образ на SD-карту для вашего Raspberry Pi. Образ можно скачать по ссылке в конце этого обзора.

Итак, что же изменилось по сравнению с предыдущей версией WebHomePi:

1. Введен выбор уровня портов GPIO для управления исполнительными реле. Эта функция позволяет использовать программное обеспечение как для «классического» управления реле через транзисторный ключ (включение реле выполняется высоким уровнем, отключениенизким), так и с релейными модулями, имеющими входы управления с оптронной развязкой (в таких модулях для включения реле используется низкий уровень, для выключениявысокий).

2. Добавлена возможность назначения каждого исполнительного реле для работы с той или иной функцией. Если ранее каждая функция жестко привязывалась к определенному реле – например, термостат №1 работал только с реле №1, таймер №2 – только с реле №4 и т.д., то сейчас каждую функцию можно привязать к любому выбранному исполнительному реле.

3. Появилась возможность инвертирования  управления любым исполнительным  реле, что может быть полезным для реализации «обратных» функций. Например, при достижении определенной температуры термостат можно запрограммировать как на включение, так и на отключение исполнительного реле.

Настроить любую из перечисленных выше функций можно на странице конфигурирования системы (рис.1, красный сектор):

 

Home Assistans

Рис. 1

 

4. В систему добавлен второй датчик освещенности TSL2561 с возможностью его работы в режиме фотореле. Адрес для работы со вторым датчиком по шине I2C необходимо установить 0х29 (первый датчик работает с адресом 0х39). Для этого на плате второго датчика нужно контакт L замкнуть со средним контактом(рис.2)

 

Home Assistans

Рис. 2

 

5. Максимальное количество датчиков DS18B20 на шине 1-wire увеличено до 10 (рис.1, желтый сектор).

6. Для работы с датчиком BMP085/BMP180 использована библиотека Adafruit_Python_BMP и введена возможность сконфигурировать в настройках подключение этого датчика (рис.1, оранжевый сектор). Кроме того, в предыдущих версиях для запуска системы при отсутствии этого датчика необходимо было его закомментировать в конфигурационном файле. Аналогично, при отсутствии дисплея HD44780 на шине I2C в конфигурационном файле необходимо было закомментировать скрипт работы с дисплеем. Сейчас эти негативные моменты устранены, систему можно запустить на  Raspberry Pi вообще без всякой обвязки, достаточно подключить сетевой кабель Ethernet и подать питание.

7. Добавлен режим работы по шине RS485 с релейным модулем разработки AlexAW (рис.3) 

 

Home Assistans

Рис. 3

 

Web-интерфейс релейного модуля позволяет контролировать состояние четырех дискретных входов и раздельное или одновременное управление четырьмя релейными выходами. Интерфейс позволяет работать с несколькими релейными модулями на шине RS485 – для этого предусмотрено переключение сетевого адреса для выбора работы с определенным контроллером.

8. Добавлен режим работы по шине RS485 с радиомодулем разработки AlexAW (рис.4) 

 

Home Assistans

Рис. 4

 

Web-интерфейс радиомодуля позволяет сформировать 31 команду управления, коды которых хранятся в EEPROM микроконтроллера. В данном режиме устройство работает как эмулятор радиопульта управления. Эти же коды могут быть идентифицированы как и принимаемые от различных датчиков (движения, протечки и т.д.). Благодаря такому решению нет необходимости делить область EEPROM на «принимаемые» и «передаваемые» команды, все записанные коды доступны как для приема, так и передачи.

Передаваемые и принимаемые команды отображаются в web-интерфейсе в соответствующих окнах. С помощью кнопки «Cleaning» можно произвести очистку информации о командах. Также в интерфейсе есть форма для переключения сетевого адреса, что позволяет оперативно переключаться для работы с несколькими радиомодулями на шине RS485.

9. Обновленная версия WebHomePi поддерживает работу с шестиканальным измерителем температуры и влажности, в котором на всех каналах применяются датчики DHT22. От поддержки версии измерителя с одним датчиком DHT22 и пятью датчиками DHT11 пришлось отказаться по причине того, что датчики DHT11 проявили себя довольно негативно в режиме измерения влажности. На графике (рис.5) четко прослеживается разница в измерениях влажности при использовании датчиков DHT11 и после их замены на DHT22. Ввиду указанных причин поддержка прежней версии измерителя температуры и влажности признана нецелесообразной. 

 

Home Assistans

Рис. 5

 

10. Установка сетевых адресов контроллеров на шине RS485 возможна как непосредственно на странице интерфейса, так и на общей странице конфигурации системы (рис.1, зеленый сектор).

11. Скрипт modbus.py для работы по шине RS485 с различными контроллерами разделен на отдельные скрипты.

12. Изменен принцип формирования вывода на главную страницу показаний датчиков.

13. Добавлен автоматический рестарт системы при обновлении конфигурации.

14. Добавлена возможность вывода показания датчика температуры и влажности SHT21 на дисплей HD44780, подключаемый к Raspberry Pi по шине I2C.

15. В дополнение к оповещению о событиях на e-mail (изменение состояния входов GPIO), введен режим дополнительного оповещения через мессенджер Telegram. Возможно параллельное использование обоих режимов, раздельное или их отключение. Отправляемые сообщения вводятся пользователем на странице конфигурирования, сообщения можно отправлять в т.ч. и на кириллице. Для реализации отправки сообщений через Telegram достаточно создать «бота» на этом мессенджере и ввести ваш token и id_chat в настройках конфигурационной страницы (рис.1, синий сектор). Описание процесса создания бота для Telegram вы без труда найдете в Интернете. На рис. 6  приведен скриншот передаваемых ботом сообщений.

 

Home Assistans

Рис. 6

 

Образ SD-карты создавался на базе Raspberry Pi2. Образ, разумеется, будет работать и на более поздних версиях Raspberry Pi. Но у них есть одна проблема с работой по последовательному порту RS485. Ввиду того, что в Raspberry Pi3, Zero W  вместо «хардварного» UART производителем реализован программный UART, последовательный порт RS485 будет работать  нестабильно (а скорее всего вообще не будет работать). Для устранения этой проблемы необходимо открыть файл /boot/config.txt и раскоментировать в нем следующие строки:

dtoverlay=pi3-miniuart-bt

enable_uart=1

core_freq=250

Если вам нет необходимости использовать шину RS485, приведенную выше операцию выполнять необязательно.

Обращаю внимание, что интерфейс системы домашней автоматизации WebHomePi англоязычный. Для переключения интерфейса на русский язык, необходимо все файлы с расширением html, находящиеся в корне папки /home/pi/myproject/html заменить на соответствующие файлы из папки /home/pi/myproject/backup/lang_ru.

 

 

Образ SD-карты

Прошивки микроконтроллеров  




Категория: | Просмотров: 3559 | Добавил: Admin | Теги: | Рейтинг: 5.0/2 |
Всего комментариев: 0






T2M © 2024
Сайт управляется системой uCoz